package cn.getech.data.development.model.dto;

import cn.getech.data.development.entity.*;
import cn.getech.data.development.entity.flink.*;
import cn.getech.data.development.entity.permission.SysRoleDataPermission;
import lombok.Data;

import java.util.List;

/***
 * 所有的数据的备份对象
 */
@Data
public class CopyAllDataDto {

    //权限集合
    private List<SysRoleDataPermission> allPermissions;

    //所有的数据源
    private List<ConfConnect> allConnectLists;
    private List<ConnectFieldInfo> allConnectFieldLists;
    private List<SapConnectField> allSapConnectFieldLists;
    private List<ProcConnect> allProcConnects;

    //所有的数据仓库
    private List<TableInfo> allTableInfoLists;
    private List<TableFieldInfo> allTableFieldInfoLists;
    //所有的实时表
    private List<BdpRealTableInfo> allRealTableInfoLists;
    private List<BdpRealTableField> allRealTableFieldInfoLists;
    private List<ProcTable> allProcTables;


    //udf函数相关的表
    private List<BdpUdfJarInfo> allUdfJarInfos;
    private List<JobRunUdf> allJobRunUdfs;


    //工作流相关的表
    private List<WorkMenu> allWorkMenus;
    private List<WorkMenuJobRel> allWorkMenuJobRels;
    private List<WorkFlowDep> allWorkFlowDeps;
    private List<JobLink> allJobLinks;
    private List<JobNodeConf> allJobMenusConfs;
    private List<JobInfo> allJobInfos;
    private List<DataManagerQualityRulesRelDto> dataManagerQualityRulesRelDtos;
    private List<AlarmObject> alarmObjects;
    private List<JobNodeInfo> allJobNodeInfos;
    private List<JobNodeLayConfig> allJobNodeLayCongigs;
    private List<JobNodeConf> allJobNodeConfs;

    //实时任务相关的表
    private List<RealTimeTaskMenu> allRealWorkMenus;
    private List<RealTimeTask> allRealTimeTask;
    private List<FlinkNodeField> allFlinkNodeField;
    private List<FlinkNodeUnion> allFlinkNodeUnion;
    private List<FlinkTaskNode> allFlinkTaskNode;
    private List<BdpRealTaskAlarmObject> taskAlarmObjects;

    private Integer procId;
    private String procName;

}
